import { LibResolver } from '../types'
import { pascalCase } from 'pascal-case'

const components = [
  'ElAlert',
  'ElAside',
  'ElAutocomplete',
  'ElBadge',
  'ElBreadcrumb',
  'ElBreadcrumbItem',
  'ElButton',
  'ElButtonGroup',
  'ElCard',
  'ElCarousel',
  'ElCarouselItem',
  'ElCascader',
  'ElCheckbox',
  'ElCheckboxButton',
  'ElCheckboxGroup',
  'ElCol',
  'ElCollapse',
  'ElCollapseItem',
  'ElColorPicker',
  'ElContainer',
  'ElDatePicker',
  'ElDialog',
  'ElDropdown',
  'ElDropdownItem',
  'ElDropdownMenu',
  'ElFooter',
  'ElForm',
  'ElFormItem',
  'ElHeader',
  'ElInput',
  'ElInputNumber',
  'ElLoading',
  'ElMain',
  'ElMenu',
  'ElMenuItem',
  'ElMenuItemGroup',
  'ElMessage',
  'ElMessageBox',
  'ElNotification',
  'ElOption',
  'ElOptionGroup',
  'ElPagination',
  'ElPopover',
  'ElProgress',
  'ElRate',
  'ElRadio',
  'ElRadioButton',
  'ElRadioGroup',
  'ElRow',
  'ElSelect',
  'ElSlider',
  'ElStep',
  'ElSteps',
  'ElSubmenu',
  'ElSwitch',
  'ElTable',
  'ElTableColumn',
  'ElTag',
  'ElTabs',
  'ElTabPane',
  'ElTimeline',
  'ElTimelineItem',
  'ElTimePicker',
  'ElTimeSelect',
  'ElTooltip',
  'ElTransfer',
  'ElTree',
  'ElUpload',
  'ElLink',
  'ElDivider',
  'ElIcon',
  'ElCalendar',
  'ElImage',
  'ElBacktop',
  'ElInfiniteScroll',
  'ElPageHeader',
  'ElAvatar',
  'ElDrawer',
  'ElPopconfirm',
  'ElSkeleton',
  'ElSkeletonItem',
  'ElCascaderPanel',
  'ElEmpty',
  'ElSpinner',
  'ElDescriptions',
  'ElDescriptionsItem',
  'ElResult',
]

export const ElementUIResolver: LibResolver = {
  libName: 'element-ui',
  libDirectory: 'lib',
  style(name) {
    if (components.includes(pascalCase(`el-${name}`))) {
      return `element-ui/lib/theme-chalk/${name}.css`
    }
    return false
  },
}

